home *** CD-ROM | disk | FTP | other *** search
/ NEC Interchannel CD-ROM Title Guide / CD [TITLEGUIDE].bin / demo / total / setup.mst < prev    next >
Encoding:
Text File  |  1995-10-28  |  18.6 KB  |  541 lines

  1. '**************************************************************************
  2. '*                âgü[â^âïüEâfâBâXâgü[âVâçâô
  3. '**************************************************************************
  4.  
  5. '$DEFINE DEBUG  ''Define for script development/debugging
  6.  
  7. '$INCLUDE 'setupapi.inc'
  8. '$INCLUDE 'msdetect.inc'
  9.  
  10. ''Dialog ID's
  11. CONST WELCOME       = 100
  12. CONST ASKQUIT       = 200
  13. CONST STARTQT20     = 210    ''épésévâCâôâXâgü[âïèJÄnâüâbâZü[âW
  14. CONST NUKEOLD       = 220    ''épésévìφÅ£é╠âEâBâôâhâE
  15. CONST ASKQUIT_qtw   = 230       ''éæéöéùé≡éΓé▀é▄é╖é⌐üH
  16. CONST DESTPATH      = 300
  17. CONST EXITFAILURE   = 400
  18. CONST EXITQUIT      = 600
  19. CONST EXITSUCCESS   = 700
  20. CONST OPTIONS       = 800
  21. CONST APPHELP       = 1000
  22. CONST BADPATH       = 6400
  23. CONST BILLBOARD     = 4545
  24. CONST CHOPTIONS        = 2500
  25. CONST OLDMESS       = 5010    '' âCâôâXâgü[âïì╧é▌épésévé≡îƒì⌡ÆåâüâbâZü[âW
  26. CONST OPTIONHELP    = 900    ''âIâvâVâçâôé╠âwâïâv
  27. CONST QTWHELP       = 910    ''épésévìφÅ£é╠âwâïâv
  28. CONST FILES_REMOVED = 1
  29. CONST FILES_SKIPPED = 2
  30. CONST RENAME_OK     = 1
  31. CONST RENAME_NG     = 2
  32. CONST BADWINDOWS    = 101
  33.  
  34. CONST MB_OKCANCEL         = 1
  35. CONST MB_ABORTRETRYIGNORE = 2
  36. CONST MB_YESNOCANCEL      = 3
  37. CONST MB_YESNO            = 4
  38. CONST MB_RETRYCANCEL      = 5
  39. CONST MB_TYPEMASK         = 15
  40.  
  41. CONST MB_ICONQUESTION     = 32
  42. CONST MB_ICONEXCLAMATION  = 48
  43. CONST MB_ICONASTERISK     = 64
  44.  
  45. CONST MB_ICONINFORMATION  = MB_ICONASTERISK
  46. CONST MB_ICONSTOP         = MB_ICONHAND
  47.  
  48.  
  49.  
  50. ''Bitmap ID
  51. CONST LOGO = 1
  52.  
  53. GLOBAL DEST$        '' Default destination directory.
  54. GLOBAL OPTCUR$      '' Option selection from option dialog.
  55. GLOBAL WINSYSDIR$   '' Windows\system dirctory.
  56. GLOBAL WINDIR$        '' Windows directory.
  57. GLOBAL CUIDLL$
  58. GLOBAL HELPPROC$
  59. GLOBAL GROUP$        ''âOâïü[âvû╝
  60. GLOBAL SrcDir$        ''â\ü[âXé╠âfâBâîâNâgâè
  61.  
  62. DECLARE SUB InstallQTW
  63. DECLARE SUB INSTPROGRAM
  64. DECLARE SUB RemoveQTW2forWin    ''évéëéÄéäéÅéùéôâfâBâîâNâgâèé╠æ|Å£üiépésévè╓ÿAüj
  65.  
  66. DECLARE FUNCTION MakePath (szDir$, szFile$) AS STRING
  67. DECLARE FUNCTION MakePath2 (szDir$, szFile$) AS STRING
  68. DECLARE FUNCTION BitmapCntrlInit LIB "mscuistf.dll" as INTEGER
  69.  
  70. DECLARE FUNCTION CheckForOld AS INTEGER    ''âCâôâXâgü[âïì╧é▌épésévîƒì⌡
  71. DECLARE FUNCTION RemoveOldQTFiles (FilePath$) AS INTEGER ''épésévâtâ@âCâïé╠Å┴ïÄ
  72. DECLARE SUB      RenameOldQT (szFilePath$)                 ''épésévâtâ@âCâïé╠âèâlü[âÇ
  73. DECLARE SUB      RenameOldQTr                ''épésévâtâ@âCâïé╠âèâlü[âÇé≡î│é╔û▀é╖
  74. rem DECLARE FUNCTION WritePrivateProfileString LIB "krnl386.exe" (szSect$, szEntry$, szString$, szINI$) AS INTEGER
  75. DECLARE FUNCTION ShowWindow LIB "user" (ss%,ss%) AS INTEGER
  76.  
  77. CONST GRPNAME$ = "─░└┘├▐¿╜─░╝«▌"
  78. CONST PROGNAME$ = "─░└┘├▐¿╜─░╝«▌"
  79. CONST EXENAME$ = "TD_DEMO.EXE"
  80.  
  81. ''Dialog list symbol names
  82. GLOBAL DRIVETEXT$
  83. GLOBAL HARDDRIVES$
  84. GLOBAL QTDIRLIST$
  85. GLOBAL OPT1OPT$     ''Option selection from OptFiles1 option dialog.
  86.  
  87.  
  88.  
  89. INIT:
  90.     CUIDLL$ = "mscuistf.dll"            ''Custom user interface dll
  91.     HELPPROC$ = "FHelpDlgProc"          ''Help dialog procedure
  92.  
  93.     SetBitmap CUIDLL$, LOGO
  94.     SetTitle "âgü[â^âïüEâfâBâXâgü[âVâçâôü@âfâéü@âZâbâgâAâbâv"
  95.     SetAbout "âgü[â^âïüEâfâBâXâgü[âVâçâôü@âfâéü@âZâbâgâAâbâv", "âoü[âWâçâô 1.0J"
  96.     i % = ShowWindow(HwndFrame(),3)
  97.     HARDDRIVES$ = "HardDrives"    ''ânü[âhâfâBâXâNé╠âèâXâg
  98.     QTDIRLIST$ = "Qtdirlist"    ''épésévé≡Äcé╖âfâBâîâNâgâè
  99.     GROUP$ = "QuickTime for Windows"
  100.  
  101.     GetLocalHardDrivesList HARDDRIVES$
  102.  
  103.     szInf$ = GetSymbolValue("STF_SRCINFPATH")
  104.     IF szInf$ = "" THEN
  105.         szInf$ = GetSymbolValue("STF_CWDDIR") + "SETUP.INF"
  106.     END IF
  107.     ReadInfFile szInf$
  108.  
  109. rem Make sure that we are running on Windows 3.1 or better
  110. rem ------------------------------------------------------
  111.     IF GetWindowsMajorVersion() < 3 THEN
  112.        sz$ = UIStartDlg(CUIDLL$, BADWINDOWS, "FInfo0DlgProc", 0, "")
  113.        UIPop 1
  114.        END
  115.     END IF
  116.  
  117.     IF (GetWindowsMajorVersion() = 3) AND (GetWindowsMinorVersion() < 10) THEN
  118.        sz$ = UIStartDlg(CUIDLL$, BADWINDOWS, "FInfo0DlgProc", 0, "")
  119.        UIPop 1
  120.        END
  121.     END IF
  122.  
  123. rem éóéδéóéδé╚âfâBâîâNâgâèé╠ĵô╛
  124. rem ------------------------------------------------------------------
  125.     WINDIR$ = GetWindowsDir()
  126.     WINSYSDIR$ = GetWindowsSysDir()
  127.     SrcDir$ = GetSymbolValue("STF_SRCDIR")
  128.  
  129.    ''Option Variables
  130.     OPT1OPT$ = "1"
  131.  
  132.     W$ = MID$(GetWindowsDir, 1, 1)
  133.     IF (IsDriveValid(W$) = 0) OR (W$ = "") THEN
  134.         i% = DoMsgBox("Windows âhâëâCâu ('"+W$+"') é═üAû│î°é╚âhâëâCâué┼é╖üB", "âGâëü[", MB_TASKMODAL+MB_ICONHAND+MB_OK)
  135.     END
  136.     END IF
  137.  
  138.     DEST$ = W$+":\tddemo"
  139.  
  140. WELCOME:
  141.     sz$ = UIStartDlg(CUIDLL$, WELCOME, "FInfoDlgProc", APPHELP, HELPPROC$)
  142.     IF sz$ = "CONTINUE" THEN
  143.         UIPop 1
  144.     ELSE
  145.         GOSUB ASKQUIT
  146.         GOTO WELCOME
  147.     END IF
  148.  
  149.  
  150. rem *************************************************************************************
  151. rem ésécâfâéé≡âCâôâXâgü[âïé╖éΘÅΩìç
  152. rem *************************************************************************************
  153. GETDESTPATH:
  154.     SetSymbolValue "EditTextIn", DEST$
  155.     SetSymbolValue "EditFocus", "END"
  156. GETPATHL1:
  157.     sz$ = UIStartDlg(CUIDLL$, DESTPATH, "FEditDlgProc", APPHELP, HELPPROC$)
  158.     DEST$ = GetSymbolValue("EditTextOut")
  159.  
  160.     IF sz$ = "CONTINUE" THEN
  161.         IF IsDirWritable(DEST$) = 0 THEN
  162.             GOSUB BADPATH
  163.             GOTO GETPATHL1
  164.         END IF
  165.         UIPop 1
  166.     ELSEIF sz$ = "REACTIVATE" THEN
  167.         GOTO GETPATHL1
  168.     ELSEIF sz$ = "BACK" THEN
  169.         UIPop 1
  170.         GOTO WELCOME
  171.     ELSE
  172.         GOSUB ASKQUIT
  173.         GOTO GETDESTPATH
  174.     END IF
  175.  
  176.     INSTPROGRAM
  177.  
  178. rem *************************************************************************************
  179. rem épésév2.0.3 é≡âCâôâXâgü[âïé╖éΘ
  180. rem *************************************************************************************
  181. rem -------------------------------------------------
  182. rem épésévé╠âCâôâXâgü[âïèmöF
  183. rem -------------------------------------------------
  184. InstqtL1:
  185.     sz$ = UIStartDlg(CUIDLL$, STARTQT20, "FInfoDlgProc", 0, "")
  186.     IF sz$ = "REACTIVATE" THEN
  187.         GOTO InstqtL1
  188.     ELSEIF sz$ = "CONTINUE" THEN
  189.     UIPop 1
  190.     ELSEIF sz$ = "EXIT" THEN
  191.         UIPopAll
  192.     GOTO QUIT
  193.     ELSE
  194.         GOTO InstqtL1
  195.     END IF
  196.  
  197.     InstallQTW
  198.  
  199. rem *************************************************************************************
  200. rem épétéhés
  201. rem *************************************************************************************
  202.  
  203. QUIT:
  204.     ON ERROR GOTO ERRQUIT
  205.  
  206.     IF ERR = 0 THEN
  207.         dlg% = EXITSUCCESS
  208.     ELSEIF ERR = STFQUIT THEN
  209.         dlg% = EXITQUIT
  210.     ELSE
  211.         dlg% = EXITFAILURE
  212.     END IF
  213. QUITL1:
  214.     sz$ = UIStartDlg(CUIDLL$, dlg%, "FInfo0DlgProc", 0, "")
  215.     IF sz$ = "REACTIVATE" THEN
  216.         GOTO QUITL1
  217.     END IF
  218.     UIPop 1
  219.  
  220.     END
  221.  
  222. ERRQUIT:
  223.     i% = DoMsgBox("âZâbâgâAâbâvé┼âGâëü[é¬ö¡É╢é╡é▄é╡é╜üB", "âGâëü[", MB_OK+MB_TASKMODAL+MB_ICONSTOP)
  224.     END
  225.  
  226.  
  227.  
  228. BADPATH:
  229.     sz$ = UIStartDlg(CUIDLL$, BADPATH, "FInfo0DlgProc", 0, "")
  230.     IF sz$ = "REACTIVATE" THEN
  231.         GOTO BADPATH
  232.     END IF
  233.     UIPop 1
  234.     RETURN
  235.  
  236.  
  237. ASKQUIT:
  238. ASKQUIT1:
  239.     sz$ = UIStartDlg(CUIDLL$, ASKQUIT, "FQuitDlgProc", 0, "")
  240.  
  241.     IF sz$ = "EXIT" THEN
  242.         UIPopAll
  243.         ERROR STFQUIT
  244.     ELSEIF sz$ = "REACTIVATE" THEN
  245.         GOTO ASKQUIT1
  246.     ELSE
  247.         UIPop 1
  248.     END IF
  249.     RETURN
  250.  
  251. ASKQUIT_qtw:
  252. ASKQUIT1_qtw:
  253.     sz$ = UIStartDlg(CUIDLL$, ASKQUIT_qtw, "FQuitDlgProc", 0, "")
  254.  
  255.     IF sz$ = "EXIT" THEN
  256.         UIPopAll
  257.     GOTO QUIT
  258.     ELSEIF sz$ = "REACTIVATE" THEN
  259.         GOTO ASKQUIT1_qtw
  260.     ELSE
  261.         UIPop 1
  262.     END IF
  263.     RETURN
  264.  
  265.  
  266.  
  267. rem **
  268. rem **
  269. rem ** épésévéQüDéOüDéRüDéTéPé╠âCâôâXâgü[âï
  270. rem *************************************************************************
  271. SUB InstallQTW STATIC
  272.  
  273.     RemoveQTW2forWin        ''Windwos âfâBâîâNâgâèé═ï¡ÉºôIé╔ìφÅ£
  274.  
  275.  
  276.     i% = CheckForOld()    ''î├éóépésévé╠ìφÅ£
  277.  
  278.     AddSectionFilesToCopyList "Files 1", SrcDir$, WINSYSDIR$
  279.     AddSectionFilesToCopyList "Files 2", SrcDir$, WINDIR$
  280.     CopyFilesInCopyList
  281.  
  282.     CreateIniKeyValue "WIN.INI", "Extensions", "mov", MakePath(WINDIR$,"player.exe") + " ^.mov", cmoOverwrite
  283.     CreateIniKeyValue "WIN.INI", "Extensions", "pic", MakePath(WINDIR$,"viewer.exe") + " ^.pic", cmoOverwrite
  284.     CreateIniKeyValue "WIN.INI", "MCI Extensions", "mov", "QTWVideo", cmoOverwrite
  285.     CreateIniKeyValue "WIN.INI", "MCI Extensions", "pic", "QTWVideo", cmoOverwrite
  286.     CreateIniKeyValue "WIN.INI", "MCI Extensions", "jpg", "QTWVideo", cmoOverwrite
  287.     CreateIniKeyValue MakePath(WINDIR$,"SYSTEM.INI"), "MCI","QTWVideo",MakePath(WINSYSDIR$, "mciqtw.drv"), cmoOverwrite
  288.     CreateIniKeyValue "WIN.INI", "Mach", "devicebitmap", "off", cmoOverwrite
  289.  
  290.     RUN MakePath(WINDIR$, "player.exe") + " install"
  291.     RUN MakePath(WINDIR$, "viewer.exe") + " install"
  292.  
  293.     rem Create a Program Manager group
  294.     rem ------------------------------
  295.            CreateProgmanGroup GROUP$, "", cmoNone
  296.            CreateProgmanItem GROUP$, "Movie Player", MakePath(WINDIR$,"PLAYER.EXE"), "", cmoOverwrite
  297.            CreateProgmanItem GROUP$, "Picture Viewer", MakePath(WINDIR$,"VIEWER.EXE"), "", cmoOverwrite
  298.  
  299.  
  300. END SUB
  301.  
  302. rem **
  303. rem ** âxâbâ^ü[âfâbâhé╠âCâôâXâgü[âï
  304. rem *************************************************************************
  305. SUB INSTPROGRAM STATIC
  306.  
  307.     SrcDir$ = GetSymbolValue("STF_SRCDIR")
  308.     CreateDir DEST$, cmoNone
  309.  
  310.     AddSectionFilesToCopyList "Program Files", SrcDir$, DEST$
  311.     CopyFilesInCopyList
  312.  
  313. rem    ini$ = MakePath(DEST$, "AMERICA.INI")
  314.     sDrive$ = MID$(SrcDir$, 1, 2)
  315.     Exe$ = MakePath(sDrive$,EXENAME$)
  316.     Ico$ = MakePath(DEST$,"tdicon.ico")
  317.  
  318. rem    CreateIniKeyValue ini$, "Settings", "CDROMDRIVE", sDrive$ , cmoOverwrite
  319.  
  320.     CreateProgmanGroup GRPNAME$, "", cmoNone
  321.     ShowProgmanGroup  GRPNAME$, 1, cmoNone
  322.     CreateProgmanItem GRPNAME$, PROGNAME$, Exe$ , Ico$+"", cmoOverwrite
  323.     CreateProgmanItem GRPNAME$, "é¿ô╟é▌é¡é╛é│éó", "write.exe "+MakePath(DEST$,"readme.wri"), "", cmoOverwrite
  324.  
  325. END SUB
  326.  
  327. rem *
  328. rem * épéòéëéâéïéséëéìéàé╠î├éóâoü[âWâçâôé¬éáéΘé⌐â`âFâbâNé╖éΘ
  329. rem *************************************************************************
  330. FUNCTION CheckForOld STATIC AS INTEGER
  331.  
  332.     sz$ = UIStartDlg(CUIDLL$, OLDMESS, "FModelessDlgProc", 0, "")
  333.  
  334.     GetLocalHardDrivesList "HardDrives"
  335.     NumDrives% = GetListLength("HardDrives")
  336.  
  337.     IF (NUMDRIVES% > 0) THEN
  338.          FOR i% = 1 TO NumDrives% STEP 1
  339.             CurrentDrive$ = GetListItem("HardDrives",i%) + ":\"
  340.             CheckForOld3:
  341.                 cursor% = ShowWaitCursor()
  342.                 OldFilePath$ = FindFileInTree("qtim.dll",CurrentDrive$)
  343.                 RestoreCursor cursor%
  344.                 IF (OldFilePath$ <> "") THEN
  345.                     j% = RemoveOldQTFiles(OldFilePath$)
  346.                     GOTO CheckForOld3
  347.                 END IF
  348.          NEXT i%
  349.     END IF
  350.     UIPOP 1
  351.  
  352.     IF (NUMDRIVES% > 0) THEN
  353.     RenameOldQTr
  354.     END IF
  355.  
  356. END FUNCTION
  357.  
  358. rem *
  359. rem * épéséhélüDécékéké≡épéséhélüDécéküQé╔âèâlü[âÇé╡é─î⌐é┬é⌐éτé╚éóéµéñé╔é╖éΘ
  360. rem ***************************************************************************
  361. SUB RenameOldQT (szFilePath$) STATIC
  362.     SPLITPATH szFilePath$, drv$, dir$, filename$, ext$
  363.     RenameFile szFilePath$,filename$+".DL_"
  364.     AddListItem QTDIRLIST$, szFilePath$
  365. END SUB
  366.  
  367. rem *
  368. rem * âèâlü[âÇé╡é─é¿éóé╜épéséhélüDécékéké≡î│é╔û▀é╖
  369. rem ***************************************************************************
  370. SUB RenameOldQTr STATIC
  371.  
  372.     n% = GetListLength(QTDIRLIST$)
  373.     IF (n% > 0) THEN
  374.         FOR i% = 1 TO n% STEP 1
  375.             rFilePath$ = GetListItem(QTDIRLIST$,i%)
  376.             SPLITPATH rFilePath$, drv$, dir$, filename$, ext$
  377.             RenameFile drv$+dir$+filename$+".DL_", filename$+ext$
  378.         NEXT i%
  379.     END IF
  380. END SUB
  381.  
  382.  
  383. FUNCTION RemoveOldQTFiles (FilePath$) STATIC AS INTEGER
  384.  
  385.     RemoveOldQTFiles = FILES_SKIPPED
  386.  
  387.     SPLITPATH FilePath$, drv$, dir$, filename$, ext$
  388.     DeadPath$ = drv$ + dir$
  389.  
  390.     szVersion$ = GetVersionOfFile(FilePath$)
  391.     SetSymbolValue "EditTextIn", DeadPath$+"   ** Version[" + szVersion$ + "] **"
  392.     sz$ = UIStartDlg(CUIDLL$, NUKEOLD, "FEditDlgProc", QTWHELP, HELPPROC$)
  393.     UIPop 1
  394.  
  395.     IF sz$ = "BACK" THEN
  396.     RenameOldQT(FilePath$)
  397.         EXIT FUNCTION
  398.     END IF
  399.  
  400.     IF sz$ <> "CONTINUE" THEN        ''ìφÅ£é╖éΘé┼é╚éóÅΩìçé═è╓Éöé≡é╩é»éΘ
  401.     RenameOldQT(FilePath$)
  402.         EXIT FUNCTION
  403.     END IF
  404.  
  405.     rem all versions
  406.         RemoveFile MakePath(DeadPath$, "qtim.dll"), cmoForce
  407.         RemoveFile MakePath(DeadPath$, "qtimcmgr.dll"), cmoForce
  408.     rem version 1.0.0
  409.         RemoveFile MakePath(DeadPath$, "qcmc.dll"), cmoForce
  410.         RemoveFile MakePath(DeadPath$, "qtjpeg.dll"), cmoForce
  411.         RemoveFile MakePath(DeadPath$, "qtraw.dll"), cmoForce
  412.         RemoveFile MakePath(DeadPath$, "qtsmc.dll"), cmoForce
  413.         RemoveFile MakePath(DeadPath$, "qtrpza.dll"), cmoForce
  414.         RemoveFile MakePath(DeadPath$, "qtrle.dll"), cmoForce
  415.         RemoveFile MakePath(DeadPath$, "qtcvid.dll"), cmoForce
  416.         RemoveFile MakePath(DeadPath$, "qtrt21.dll"), cmoForce
  417.         RemoveFile MakePath(DeadPath$, "qtvhdw.dll"), cmoForce
  418.     rem version 1.1.x and later
  419.         RemoveFile MakePath(DeadPath$, "mciqtw.drv"), cmoForce
  420.         RemoveFile MakePath(DeadPath$, "qcmc.qtc"), cmoForce
  421.         RemoveFile MakePath(DeadPath$, "qtjpeg.qtc"), cmoForce
  422.         RemoveFile MakePath(DeadPath$, "qtraw.qtc"), cmoForce
  423.         RemoveFile MakePath(DeadPath$, "qtsmc.qtc"), cmoForce
  424.         RemoveFile MakePath(DeadPath$, "qtrpza.qtc"), cmoForce
  425.         RemoveFile MakePath(DeadPath$, "qtrle.qtc"), cmoForce
  426.         RemoveFile MakePath(DeadPath$, "qtcvid.qtc"), cmoForce
  427.         RemoveFile MakePath(DeadPath$, "qtrt21.qtc"), cmoForce
  428.         RemoveFile MakePath(DeadPath$, "navg.qtc"), cmoForce
  429.         RemoveFile MakePath(DeadPath$, "qtiv31.qtc"), cmoForce
  430.     rem version 1.9 and later
  431.         RemoveFile MakePath(DeadPath$, "qtvhdw.qtc"), cmoForce
  432.         RemoveFile MakePath(DeadPath$, "qtyvu9.qtc"), cmoForce
  433.         RemoveFile MakePath(DeadPath$, "qtmsvc.qtc"), cmoForce
  434.         RemoveFile MakePath(DeadPath$, "qtiv32.qtc"), cmoForce
  435.         RemoveFile MakePath(DeadPath$, "qtiyvu9.qtc"), cmoForce
  436.         RemoveFile MakePath(DeadPath$, "qtvhdw.qtc"), cmoForce
  437.         RemoveFile MakePath(DeadPath$, "dhio_dh.qtc"), cmoForce
  438.         RemoveFile MakePath(DeadPath$, "reelmgic.qtc"), cmoForce
  439.      rem Æ╟ë┴
  440.         RemoveFile MakePath(DeadPath$, "mciqtenu.dll"), cmoForce
  441.         RemoveFile MakePath(DeadPath$, "qthndlr.dll"), cmoForce
  442.         RemoveFile MakePath(DeadPath$, "qtnotify.exe"), cmoForce
  443.         RemoveFile MakePath(DeadPath$, "qtold.qtc"), cmoForce
  444.         RemoveFile MakePath(DeadPath$, "qtole.dll"), cmoForce
  445.         RemoveFile MakePath(DeadPath$, "qtrpza.qtc"), cmoForce
  446.      rem Æ╟ë┴éQ
  447.         RemoveFile MakePath(DeadPath$, "mcenu.hlp"), cmoForce
  448.         RemoveFile MakePath(DeadPath$, "playenu.dll"), cmoForce
  449.         RemoveFile MakePath(DeadPath$, "playenu.hlp"), cmoForce
  450.         RemoveFile MakePath(DeadPath$, "player.exe"), cmoForce
  451.         RemoveFile MakePath(DeadPath$, "viewenu.dll"), cmoForce
  452.         RemoveFile MakePath(DeadPath$, "viewenu.hlp"), cmoForce
  453.         RemoveFile MakePath(DeadPath$, "viewer.exe"), cmoForce
  454.  
  455.     RemoveOldQTFiles = FILES_REMOVED
  456.  
  457.  
  458. END FUNCTION
  459.  
  460.  
  461. '**
  462. '** Purpose:
  463. '**     Appends a file name to the end of a directory path,
  464. '**     inserting a backslash character as needed.
  465. '** Arguments:
  466. '**     szDir$  - full directory path (with optional ending "\")
  467. '**     szFile$ - filename to append to directory
  468. '** Returns:
  469. '**     Resulting fully qualified path name.
  470. '*************************************************************************
  471. FUNCTION MakePath (szDir$, szFile$) STATIC AS STRING
  472.     IF szDir$ = "" THEN
  473.         MakePath = szFile$
  474.     ELSEIF szFile$ = "" THEN
  475.         MakePath = szDir$
  476.     ELSEIF MID$(szDir$, LEN(szDir$), 1) = "\" THEN
  477.         MakePath = MakePath2(szDir$, szFile$)
  478.     ELSE
  479.         MakePath = szDir$ + "\" + szFile$
  480.     END IF
  481. END FUNCTION
  482.  
  483.  
  484. '**
  485. '** Purpose:
  486. '**     If ending "\" is a tailbyte of a DBCS character, append a "\" 
  487. '**     to the end of the file name.
  488. '** Arguments:
  489. '**     szDir$  - full directory path (with optional ending "\")
  490. '**     szFile$ - filename to append to directory
  491. '** Returns:
  492. '**     Resulting fully qualified path name.
  493. '*************************************************************************
  494. FUNCTION MakePath2 (szDir$, szFile$) STATIC AS STRING
  495.     IF IsDBCSChar(szDir$, LEN(szDir$)) = 2 THEN
  496.         MakePath2 = szDir$ + "\" + szFile$
  497.     ELSE
  498.         MakePath2 = szDir$ + szFile$
  499.     END IF
  500. END FUNCTION
  501.  
  502. SUB RemoveQTW2forWin STATIC
  503.         RemoveFile MakePath(WINDIR$, "qtim.dll"), cmoForce
  504.         RemoveFile MakePath(WINDIR$, "qtimcmgr.dll"), cmoForce
  505.         RemoveFile MakePath(WINDIR$, "qcmc.dll"), cmoForce
  506.         RemoveFile MakePath(WINDIR$, "qtjpeg.dll"), cmoForce
  507.         RemoveFile MakePath(WINDIR$, "qtraw.dll"), cmoForce
  508.         RemoveFile MakePath(WINDIR$, "qtsmc.dll"), cmoForce
  509.         RemoveFile MakePath(WINDIR$, "qtrpza.dll"), cmoForce
  510.         RemoveFile MakePath(WINDIR$, "qtrle.dll"), cmoForce
  511.         RemoveFile MakePath(WINDIR$, "qtcvid.dll"), cmoForce
  512.         RemoveFile MakePath(WINDIR$, "qtrt21.dll"), cmoForce
  513.         RemoveFile MakePath(WINDIR$, "qtvhdw.dll"), cmoForce
  514.         RemoveFile MakePath(WINDIR$, "mciqtw.drv"), cmoForce
  515.         RemoveFile MakePath(WINDIR$, "qcmc.qtc"), cmoForce
  516.         RemoveFile MakePath(WINDIR$, "qtjpeg.qtc"), cmoForce
  517.         RemoveFile MakePath(WINDIR$, "qtraw.qtc"), cmoForce
  518.         RemoveFile MakePath(WINDIR$, "qtsmc.qtc"), cmoForce
  519.         RemoveFile MakePath(WINDIR$, "qtrpza.qtc"), cmoForce
  520.         RemoveFile MakePath(WINDIR$, "qtrle.qtc"), cmoForce
  521.         RemoveFile MakePath(WINDIR$, "qtcvid.qtc"), cmoForce
  522.         RemoveFile MakePath(WINDIR$, "qtrt21.qtc"), cmoForce
  523.         RemoveFile MakePath(WINDIR$, "navg.qtc"), cmoForce
  524.         RemoveFile MakePath(WINDIR$, "qtiv31.qtc"), cmoForce
  525.         RemoveFile MakePath(WINDIR$, "qtvhdw.qtc"), cmoForce
  526.         RemoveFile MakePath(WINDIR$, "qtyvu9.qtc"), cmoForce
  527.         RemoveFile MakePath(WINDIR$, "qtmsvc.qtc"), cmoForce
  528.         RemoveFile MakePath(WINDIR$, "qtiv32.qtc"), cmoForce
  529.         RemoveFile MakePath(WINDIR$, "qtiyvu9.qtc"), cmoForce
  530.         RemoveFile MakePath(WINDIR$, "qtvhdw.qtc"), cmoForce
  531.         RemoveFile MakePath(WINDIR$, "dhio_dh.qtc"), cmoForce
  532.         RemoveFile MakePath(WINDIR$, "reelmgic.qtc"), cmoForce
  533.         RemoveFile MakePath(WINDIR$, "mciqtenu.dll"), cmoForce
  534.         RemoveFile MakePath(WINDIR$, "qthndlr.dll"), cmoForce
  535.         RemoveFile MakePath(WINDIR$, "qtnotify.exe"), cmoForce
  536.         RemoveFile MakePath(WINDIR$, "qtold.qtc"), cmoForce
  537.         RemoveFile MakePath(WINDIR$, "qtole.dll"), cmoForce
  538.         RemoveFile MakePath(WINDIR$, "qtrpza.qtc"), cmoForce
  539. END SUB
  540.  
  541.